home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #2
/
Monster Media No. 2 (Monster Media)(1994).ISO
/
pcboard
/
mafpcb15.zip
/
ZS.PPE
(
.txt
)
< prev
Wrap
PCBoard Programming Language Executable
|
1994-04-21
|
4KB
|
291 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Boolean BOOLEAN002
Boolean BOOLEAN003
Date DATE001
Date DATE002
Date DATE003
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String TSTRING008(1)
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
;------------------------------------------------------------------------------
GetUser
DATE001 = Date()
DATE002 = DATE001
BOOLEAN001 = 0
DATE003 = U_LDate()
STRING010 = PPEPath() + "zs.cfg"
STRING003 = ReadLine(STRING010, 4) + "\captmp" + String(PcbNode())
STRING009 = PPEPath() + "graph\zstext"
If (LangExt() <> "") Then
If (Exist(STRING009 + LangExt())) STRING009 = STRING009 + LangExt()
Endif
STRING011 = TokenStr()
Tokenize ReadLine(STRING010, 5)
BOOLEAN002 = 0
If (GetToken() == "YES") Then
BOOLEAN002 = 1
STRING006 = GetToken()
STRING005 = ReadLine(STRING010, 6)
STRING005 = ReplaceStr(STRING005, "@ZIP@", STRING003 + "." + STRING006)
STRING005 = ReplaceStr(STRING005, "@CAP@", STRING003)
Endif
STRING013 = Chr(13)
GetUser
Tokenize STRING011
If (TokCount() >= 1) Then
INTEGER005 = TokCount()
Redim TSTRING008, INTEGER005
For INTEGER003 = 1 To INTEGER005
TSTRING008(INTEGER003) = GetToken()
If (Left(TSTRING008(INTEGER003), 1) == "-") Then
STRING004 = Mid(TSTRING008(INTEGER003), 2, Len(TSTRING008(INTEGER003)) - 1)
DATE002 = ToDate(ToInt(DATE001) - ToInt(STRING004))
BOOLEAN001 = 1
TSTRING008(INTEGER003) = "N " + Strip(String(ToDate(DATE002)), "-")
Endif
Next
STRING014 = ""
For INTEGER004 = 1 To INTEGER005
STRING014 = STRING014 + " " + TSTRING008(INTEGER004)
Next
ElseIf (TokCount() == 0) Then
DispFile PPEPath() + "graph\zshdr", 1 + 4
:LABEL001
STRING012 = ReadLine(STRING010, 1)
Print ReadLine(STRING009, 1)
INTEGER001 = GetX()
INTEGER002 = GetY()
Print STRING012
AnsiPos INTEGER001, INTEGER002
InputStr "_", STRING012, 1, 4, Mask_Num() + "?N", 16 + 8 + 2
If (STRING012 == "?") Then
Newline
DispFile PPEPath() + "graph\zshlp", 1 + 4
Newline
Goto LABEL001
Goto LABEL002
Endif
If (STRING012 == "") Then
End
Endif
:LABEL002
If (Upper(STRING012) == "N") Then
STRING014 = ""
Goto LABEL003
Endif
DATE002 = ToDate(ToInt(DATE001) - ToInt(STRING012))
STRING014 = "N " + Strip(String(DATE002), "-")
:LABEL003
Newline
STRING012 = ReadLine(STRING010, 2)
Print ReadLine(STRING009, 2)
INTEGER001 = GetX()
INTEGER002 = GetY()
Print STRING012
AnsiPos INTEGER001, INTEGER002
InputStr "_", STRING012, 1, 10, "0123456789-UuAa?", 16
If (STRING012 == "?") Then
Newline
DispFile PPEPath() + "graph\zshlp", 1 + 4
Goto LABEL003
Goto LABEL004
Endif
If (STRING012 == "") Then
End
Endif
:LABEL004
STRING014 = STRING014 + " " + STRING012
:LABEL005
Newline
STRING012 = ReadLine(STRING010, 3)
Print ReadLine(STRING009, 3)
INTEGER001 = GetX()
INTEGER002 = GetY()
Print STRING012
AnsiPos INTEGER001, INTEGER002
InputStr "_", STRING012, 1, 10, "NnFfCc?", 16
If (STRING012 == "?") Then
Newline
DispFile PPEPath() + "graph\zshlp", 1 + 4
Goto LABEL005
Goto LABEL006
Endif
If (STRING012 == "") Then
End
Endif
:LABEL006
Newline
If (Upper(STRING012) == "N") Then
Goto LABEL007
Goto LABEL007
Endif
If (Upper(STRING012) == "F") Then
Goto LABEL008
Goto LABEL007
Endif
If (Upper(STRING012) == "C") Then
Goto LABEL009
Endif
Endif
:LABEL007
KbdStuff "Z " + STRING014
End
:LABEL008
KbdStuff "Z D " + STRING014
End
:LABEL009
OpenCap STRING003, BOOLEAN003
If (BOOLEAN003) Then
PrintLn "ERROR in dirlist: cannot open capture file"
End
Endif
ShowOff
KbdStuff STRING013
Dir "N NS " + STRING014
CloseCap
ShowOn
If (BOOLEAN002) Then
Tokenize STRING005
STRING001 = GetToken()
STRING002 = ""
STRING007 = GetToken()
While (1) Do
If (STRING007 == "") Break
STRING002 = STRING002 + " " + STRING007
STRING007 = GetToken()
EndWhile
Shell 1, BOOLEAN003, STRING001, STRING002
Download STRING003 + "." + STRING006
Else
Download STRING003
Endif
Delete STRING003
Delete STRING003 + "." + STRING006
KbdStuff STRING013
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 7 End
; 38 Goto
; 46 Let
; 6 Print
; 1 PrintLn
; 22 If
; 4 DispFile
; 2 GetUser
; 2 Delete
; 3 InputStr
; 7 Newline
; 3 Tokenize
; 1 Shell
; 4 KbdStuff
; 1 Dir
; 3 AnsiPos
; 1 OpenCap
; 1 CloseCap
; 1 ShowOn
; 1 ShowOff
; 1 Redim
; 2 Download
;
;
; ■ Functions used :
;
; 36 +
; 3 -
; 14 ==
; 1 <>
; 2 <
; 2 <=
; 5 >=
; 20 !
; 4 &&
; 2 ||
; 1 Len(
; 4 Upper()
; 1 Mid()
; 1 Left()
; 1 Chr()
; 1 Date()
; 1 U_LDate()
; 2 Strip()
; 3 String()
; 1 Mask_Num()
; 6 PPEPath()
; 1 PcbNode()
; 9 ReadLine()
; 6 GetToken()
; 1 Exist()
; 1 TokenStr()
; 3 LangExt()
; 3 GetX()
; 3 GetY()
; 3 TokCount()
; 2 ReplaceStr()
; 3 ToDate()
; 4 ToInt()
;
;------------------------------------------------------------------------------
;
; Analysis flags : S
;
; S - Shell to DOS ■ 5
; This may be normal if the PPE need to execute an external command,
; but may be actually anything... nasty (formating HD, rebooting,...)
; or usefull (sorting, maintenance,...). Check!
; ■ Search for : SHELL
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 2 For/Next
; 1 While/EndWhile
; 17 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------